﻿using System;
namespace IGolovkine.ShoutCastRipper
{
    public interface IStationClient : IDisposable
    {
        void Connect();
        void Disconnect();
        
        bool IsConnected { get; }
        string CurrentTitle { get; }
        
        DateTime CurrentTitleStartTime { get; }
        DateTime ConnectionTime { get; }
        
        event EventHandler<ContentStartEventArgs> ContentStart;
        event EventHandler<ContentEndEventArgs> ContentEnd;
        event EventHandler<ContentReceivedEventArgs> ContentReceived;
        event EventHandler<DisconnectedEventArgs> Disconnected;
    }
}
